package cn.tedu.collection;

import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

/*本类用于测试Set*/
public class TestSet {
    public static void main(String[] args) {
        //创建集合对象
        Set<String> set = new HashSet<>();
        //向集合中存入数据
        set.add("紫霞仙子");
        set.add("至尊宝");
        set.add("蜘蛛精");
        set.add("紫霞仙子");
        set.add(null);
        System.out.println(set);//打印查看集合中的元素
        /*1.set集合中的元素都是没有顺序的
        * 2.set集合中的元素不能重复
        * 3.set集合可以存null值,最多存一个*/

        System.out.println(set.contains("唐僧"));
        System.out.println(set.isEmpty());
        System.out.println(set.remove(null));
        System.out.println(set);//null值被删除掉了
        System.out.println(set.size());
        System.out.println(Arrays.toString(set.toArray()));//将集合转为数组

        Set<String> set2 = new HashSet<>();
        set2.add("小脑斧");
        set2.add("小兔纸");
        set2.add("小海疼");
        set2.add("花蝴蝶");
        System.out.println(set2);
        set.addAll(set2);//将set2集合中的所有元素添加到set集合中
        System.out.println(set2);
        set.removeAll(set2);
        System.out.println(set.containsAll(set2));//移除了就不包含了(是否包含指定元素)
        //取set集合中包含set2集合中的元素--取交集
        set.retainAll(set2);
        System.out.println(set);

        Iterator<String> it = set2.iterator();
        while(it.hasNext()){
            //打印本轮循环中获取到的集合中的元素
            System.out.println(it.next());
            //String animal = it.next();
            //System.out.println(animal);
        }
    }
}
